package 开始的剑指offer8月.字符串;
// https://leetcode-cn.com/problems/zuo-xuan-zhuan-zi-fu-chuan-lcof/
public class 剑指Offer58左旋转字符串0815 {//简单做出来了
    public String reverseLeftWords(String s, int n) {
        StringBuffer buffer=new StringBuffer();
        for(int i=n;i<s.length();i++){
            buffer.append(s.charAt(i));
        }
        for(int i=0;i<n;i++){
            buffer.append(s.charAt(i));
        }
        return buffer.toString();
    }

    class Solution {
        //列表遍历拼接
        // public String reverseLeftWords(String s, int n) {
        //     StringBuffer buffer=new StringBuffer();
        //     for(int i=n;i<s.length();i++){
        //         buffer.append(s.charAt(i));
        //     }
        //     for(int i=0;i<n;i++){
        //         buffer.append(s.charAt(i));
        //     }
        //     return buffer.toString();
        // }

        //切片函数
        //  public String reverseLeftWords(String s, int n) {
        //    return s.substring(n, s.length()) + s.substring(0, n);
        // }

        //第一的优化代码
        // public String reverseLeftWords(String s, int n) {
        //     StringBuilder res = new StringBuilder();
        //     for(int i = n; i < n + s.length(); i++)
        //         res.append(s.charAt(i % s.length()));
        //     return res.toString();
        // }


        public String reverseLeftWords(String s, int n) {
            String res = "";
            for(int i = n; i < s.length(); i++)
                res += s.charAt(i);
            for(int i = 0; i < n; i++)
                res += s.charAt(i);
            return res;
        }



    }

}
